home *** CD-ROM | disk | FTP | other *** search
/ Shareware Super Platinum 8 / Shareware Super Platinum 8.iso / mac / DATABASE / OBJ1_2.ZIP;1 / OB_COMMA.TXT < prev    next >
Encoding:
Text File  |  1992-12-24  |  47.1 KB  |  1,437 lines

  1. '
  2. 'This chapter menu
  3. '^^^^^^^^^^^^^^^^^^^^^^
  4. '
  5. '!short:Operators and functions for increased readability of source code
  6. '!short:Constants for increasing the source code readability
  7. '!short:
  8. '!short:OBJECT           new object creation
  9. '!short:
  10. '!short:BEGIN BREAK      supress of system error call
  11. '!short:RECOVER BREAK    system error recovery
  12. '!short:END BREAK        end of program part with supressed error call
  13. '!short:BREAKIF          conditional break
  14. '!short:
  15. '!short:ENDWHILE         conditional while loop end
  16. '!short:REPEAT           unconditional loop begin
  17. '!short:LOOPIF           conditional loop begin
  18. '!short:EXITIF           conditional loop exit
  19. '!short:UNTIL            conditional repeat until loop end
  20. '!short:ENDREPEAT        unconditional repeat loop end
  21. '!short:
  22. '!short:RETURNIF         conditional function exit
  23. '!short:RETURN UPDATE    function exit, for switch set
  24. '!short:FILL EMPTY       variable is filled if empty
  25. '!short:DEFAULT TO       variable is filled with default value if it's value is NIL
  26. '!short:STORE VALUE      variable is stored the default value if it's value <> NIL
  27. '!short:
  28. '!short:SET ERRORS FILE  error file name set
  29. '!short:SET LASTKEY      key code for the LasteKey() function set
  30. '!short:SET QUICKESC     sets if the ESC key should exit the menu or no
  31. '!short:SET DIALOG       enable / disable dialog line output
  32. '!short:CLEAR KEYBOARD   cleares the keyboard queue
  33. '!short:SKIP DELETED     search for first undeleted database record
  34. '!short:
  35. '!short:REFRESH ROW      restores the current viewed row
  36. '!short:REFRESH TABLE    restores the current View object display
  37. '!short:
  38. '!short:NET CREATE       database creation in network environment
  39. '!short:NET USE          database open in a network environment
  40. '!short:NET INDEX ON     index file creation in a network environment
  41. '!short:NET SET INDEX    index file open in a network environment
  42. '!short:NET APPEND BLANK blank record append in a network environment
  43. '!short:NET DELETE       record deleted mark in a network environment
  44. '!short:NET RECALL       deleted marked record recall in a network environment
  45. '!short:NET REPLACE      extended network storing a data info database file
  46. '!short:NET RLOCK        record lock before write atempt in a network environment
  47. '!short:NET FLOCK        database file lock before write atempt in a network environment
  48. '!short:NET ERASE        database file delete in a network environment
  49. '!short:NET REINDEX      reindex of databases in a network environment
  50. '!short:NET PACK         pack of database in a network environment
  51. '!short:NET ZAP          zap of database in a network environment
  52. '!short:NET UNLOCK       unlock of database record in a network environment
  53. '!short:NET CLOSE        close of database in a network environment
  54. '
  55. '
  56. '####################################################################################
  57. !short:Operators and functions for increased readability of source code
  58. ^BOperators and functions for increased readability of source code:
  59. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  60.  
  61. With help of preprocessor command #define are following new operators
  62. defined:
  63.  
  64. #define  and           .and.
  65. #define  or            .or.
  66. #define  true          .t.
  67. #define  false         .f.
  68. #define  cr_lf         (chr(13)+chr(10))        //new line
  69. #define  NTrim(n)      LTrim(Str(n))            //number to string without spc
  70. #define  Swap(a,b)     Eval({|p|p:=a,a:=b,b:=p})//swap two variables
  71. #define  Bell()        Tone(400,0.2)            //beeps
  72. #define  DisableHelp() ReadHelpVar(DISABLE)
  73. #define  EnableHelp()  ReadHelpVar("")
  74.  
  75. DisableHelp() disables the help to database fields and menu items;
  76. EnableHelp() it enables.
  77.  
  78. A logical operator IN defined:
  79. #xtranslate (<var> IN <a>,<b>) => (<a> <= <var> .and. <var> <= <b>)
  80.  
  81.  
  82. Source file is Object.ch
  83.  
  84.  
  85. '####################################################################################
  86. !short:Constants for increasing the source code readability
  87. ^BConstants for increasing the source code readability:
  88. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  89.  
  90. With help of preprocessor command #define are following new constants
  91. defined:
  92.  
  93. Color items description:
  94. ~~~~~~~~~~~~~~~~~~~~~~~~
  95.  
  96. #define nNormal    1   //CLIPPER:Normal,Enhanced,Border,NotUse,Unselect
  97. #define nEnhanced  2   //         1      2        3      4      5
  98. #define nBorder    3
  99. #define nNotUse    4
  100. #define nUnSelect  5
  101.  
  102. #define nShadow    3   //WINDOW: Normal,Enhanced,Shadow,Title, Unselect
  103. #define nTitle     4   //         1      2        3      4      5
  104.  
  105. #define nSelected  2   //MENU:   Normal,Selected,Shadow,Letter,Disable
  106. #define nLetter    4   //         1      2        3      4      5
  107. #define nDisable   5
  108. #define nExtension 6
  109.  
  110. Look at the clipper color string.
  111.  
  112. Source file is Object.ch
  113.  
  114.  
  115. '####################################################################################
  116. !short:OBJECT           new object creation
  117. ^BOBJECT  new object creation:
  118. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  119.  
  120. Syntax:
  121. ~~~~~~~
  122.  
  123.   [Visibility] OBJECT [<VarName>] OF <Class> [INIT [InitMethod( [list] )]]
  124.  
  125.  where:
  126.  
  127.   Visibility can be LOCAL or STATIC or PUBLIC or PRIVATE
  128.  
  129.   InitMethod(...) can be: Function( [list] )
  130.                       or: <VarName>:VirtualMethod( [list] )
  131.  
  132. Description:
  133. ~~~~~~~~~~~~
  134. New object of the class is created, the initial instvar values are set
  135. (method o:New()) and in the case of use of INIT it is initialised by o:Init().
  136. If the InitMethod([list]) is set it is performed too.
  137. Have a look to:
  138. Basic concept ØØ Simple object manipulating demo
  139.  
  140.  
  141. Example:
  142. ~~~~~~~~
  143.   ^ULOCAL OBJECT o1 OF Class1^N
  144.   new local object o1 of Class1 is created, its variables are initialised
  145.   by standard constructor method o:New().
  146.  
  147.   ^USTATIC OBJECT o2 OF Class2 INIT^N
  148.   new static object o2 of Class2 is created and constructor o:New() and
  149.   virtual method o:Init() is called for it.
  150.  
  151.   ^UPUBLIC OBJECT o3 OF Class3 INIT PostInit(), o3:Load()^N
  152.   new public object o3 of Class3 is created and constructor o:New() and
  153.   virtual method Init(), and static method  PostInit() and virtual method
  154.   Load() is called for it. This command can be rewritten as
  155.  
  156.   PUBLIC OBJECT o3 OF Class3  //object creation, constructor o:New() call
  157.   o3:Init()                   //virtual method
  158.   PostInit()                  //function
  159.   o3:Load()                   //virtual method
  160.  
  161.  
  162. Source file is Object.ch
  163.  
  164. !seealso: ob_basic.ngo:Syntax ob_basic.ngo:"Simple demo"
  165.  
  166.  
  167. '####################################################################################
  168. !short:BEGIN BREAK      supress of system error call
  169. ^BBEGIN BREAK supress of system error call:
  170. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  171.  
  172. Syntax:
  173. ~~~~~~~
  174.  
  175.   ^UBEGIN BREAK^N
  176.     //any source code which can cause an error
  177.   [^URECOVER BREAK^N [^UUSING oError^N]]   //unconditional error recover
  178.     //any source code to handle the error
  179.   ^UEND BREAK^N
  180.  
  181. Description:
  182. ~~~~~~~~~~~~~
  183. This program construction is suitable for runtime error handle. All errors
  184. causing the "Error CLIPPER/BASE..." are handled by your code. If there is
  185. no command RECOVER BREAK... the control goes immediately to the first command
  186. after the END BREAK, and the error occurance is supressed.
  187. If the RECOVER BREAK... is used :
  188.  
  189. 1.There was no error between BEGIN BREAK and RECOVER BREAK then the
  190.   RECOVER BREAK... command gives the control to the first command
  191.   after the END BREAK. So in this case the code part between
  192.   RECOVER BREAK... and END BREAK is skipped.
  193.  
  194. 2.If there was a error between BEGIN BREAK a RECOVER BREAK then remaining
  195.   code of this part is skipped and the control goes to the first command
  196.   after the RECOVER BREAK...
  197.  
  198. If you use the full RECOVER BREAK USING oError command, then before the
  199. control goes to the error handling part the variable oError is filled with
  200. clipper object of Error class. This object describes the error type.
  201.  
  202. Example:
  203. ~~~~~~~~
  204.   ...
  205.   REPEAT
  206.     BEGIN BREAK
  207.       Expr:=Space(20)
  208.       Expr:=EditIt(Expr,"Input the valid clipper expression:")
  209.       x:=&(Expr)
  210.     RECOVER BREAK USING oError
  211.       Alert("This was not a valid expression!;"+ErrorMessage(oError))
  212.       LOOP
  213.     END BREAK
  214.   UNTIL true
  215.  
  216. This code part will be repeated until you input the valid clipper expression.
  217.  
  218. Comment:
  219. ~~~~~~~~
  220. If there occures a rutime error in a part between RECOVER BREAK and END
  221. BREAK, it will be handled in the standard way, with error message and
  222. exiting the program. See the BEGIN SEQUENCE.
  223.  
  224. Source file is Object.ch
  225.  
  226. !seealso: REPEAT ob_funct.ngo:EditIt ob_funct.ngo:ErrorMessage
  227.  
  228.  
  229. '####################################################################################
  230. !short:RECOVER BREAK    system error recovery
  231. ^BRECOVER BREAK system error recovery:
  232. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  233.  
  234. Description:
  235. ~~~~~~~~~~~~
  236. The description is in a BEGIN BREAK paragraph.
  237.  
  238. Source file is Object.ch
  239.  
  240. !seealso: "BEGIN BREAK"
  241.  
  242.  
  243. '####################################################################################
  244. !short:END BREAK        end of program part with supressed error call
  245. ^BEND BREAK end of program part with supressed error call:
  246. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  247.  
  248. Description:
  249. ~~~~~~~~~~~~
  250. The description is in a BEGIN BREAK paragraph.
  251.  
  252. Source file is Object.ch
  253.  
  254. !seealso: "BEGIN BREAK"
  255.  
  256.  
  257. '####################################################################################
  258. !short:BREAKIF          conditional break
  259. ^BBREAKIF conditional break:
  260. ~~~~~~~~~~~~~~~~~~~~~~~~~
  261.  
  262. Syntax:
  263. ~~~~~~~
  264.  
  265.   ^UBREAKIF^N <Expr> [^UWITH^N <objError>]
  266.  
  267. Description:
  268. ~~~~~~~~~~~~
  269. If the value of expresion <Expr> is true, the BREAK <objError> is performed.
  270.  
  271. Example:
  272. ~~~~~~~~
  273.   ...
  274.   BREAKIF i<0 WITH MakeErrorObject()
  275.   ...
  276.  
  277.   STATIC FUNCTION MakeErrorObject()
  278.     LOCAL o:=ErrorNew()
  279.     o:Description:="Variable i has too small value!"
  280.     o:Operation:="<"
  281.     o:Severity:=ES_WHOCARES
  282.     o:SubSystem:="Test i"
  283.     o:Tries:=0
  284.     o:CanRetry:=true
  285.     RETURN o
  286.  
  287. If variable i < 0 there is a new clipper error object created and the
  288. BREAK command is activated which is given the error object. Have a look
  289. to the clipper Error class.
  290.  
  291. Source file is Object.ch
  292.  
  293. !seealso: "BEGIN BREAK"
  294.  
  295.  
  296. '####################################################################################
  297. !short:ENDWHILE         conditional while loop end
  298. ^BENDWHILE conditional while loop end:
  299. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  300.  
  301. Syntax:
  302. ~~~~~~~
  303.  
  304.   ^UENDWHILE^N [ <Expr> ]
  305.  
  306. Description:
  307. ~~~~~~~~~~~~
  308. The loop is ended if <Expr> is true if <Expr> is not set it is replaced with
  309. false and the loop is repeated.
  310.  
  311.  
  312. Example:
  313. ~~~~~~~~
  314.   SET EXACT OFF
  315.   LOCATE FOR field->Name="Nov"
  316.   WHILE FOUND()
  317.     ? field->Name, field->Salary
  318.     CONTINUE
  319.   ENDWHILE Alert("Continue search?",{"Yes,"No"})<>1
  320.   ...
  321.  
  322. Source file is Object.ch
  323.  
  324. !seealso: REPEAT UNTIL EXITIF LOOPIF
  325.  
  326.  
  327. '####################################################################################
  328. !short:REPEAT           unconditional loop begin
  329. ^BREPEAT unconditional loop begin:
  330. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  331.  
  332. Syntax:
  333. ~~~~~~~
  334.  
  335.   ^UREPEAT^N
  336.  
  337. Description:
  338. ~~~~~~~~~~~~
  339. Exactly the same as WHILE .T.
  340.  
  341.  
  342. Example:
  343. ~~~~~~~~
  344.   REPEAT
  345.     nKey:=InKey(0)
  346.   UNTIL nKey<>K_ENTER
  347.   ...
  348.  
  349. Enter key pressing ignore K_ENTER.
  350.  
  351. Source file is Object.ch
  352.  
  353. !seealso: EXITIF LOOPIF ENDWHILE
  354.  
  355.  
  356. '####################################################################################
  357. !short:LOOPIF           conditional loop begin
  358. ^BLOOPIF conditional loop begin:
  359. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  360.  
  361. Syntax:
  362. ~~~~~~~
  363.  
  364.   ^ULOOPIF^N <Expr>
  365.  
  366. Description:
  367. ~~~~~~~~~~~
  368. If the expresion <Expr> is true, the LOOP is performed.
  369.  
  370. Example:
  371. ~~~~~~~~
  372.   REPEAT
  373.     nKey:=InKey(0)
  374.     LOOPIF nKey==K_ENTER
  375.     DO CASE
  376.       CASE nKey==K_UP
  377.         ...
  378.       CASE nKey==K_DOWN
  379.         ...
  380.       OTHERWISE
  381.         ...
  382.     ENDCASE
  383.   UNTIL nKey==K_ESC
  384.   ...
  385.  
  386. All pressed keys are handled without K_ENTER, the loop is finished after
  387. pressing of th ESC key.
  388.  
  389. Source file is Object.ch
  390.  
  391. !seealso: REPEAT UNTIL EXITIF ENDWHILE
  392.  
  393.  
  394. '####################################################################################
  395. !short:EXITIF           conditional loop exit
  396. ^BEXITIF conditional loop exit:
  397. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  398.  
  399. Syntax:
  400. ~~~~~~~
  401.  
  402.   ^UEXITIF^N <Expr>
  403.  
  404. Description:
  405. ~~~~~~~~~~~~
  406. If the expresion <Expr> is true, the EXIT command is performed.
  407.  
  408. Example:
  409. ~~~~~~~~
  410.   REPEAT
  411.     nKey:=InKey(0)
  412.     EXITIF nKey==K_ENTER or nKey==K_ESC
  413.     DO CASE
  414.       CASE nKey==K_UP
  415.         ...
  416.       CASE nKey==K_DOWN
  417.         ...
  418.       OTHERWISE
  419.         ...
  420.     ENDCASE
  421.   ENDREPEAT
  422.   ...
  423.  
  424.  
  425. All pressed keys are handled, the loop is finished after pressing of the 
  426. ESC key or the Enter key.
  427.  
  428. Source file is Object.ch
  429.  
  430. !seealso: REPEAT UNTIL LOOPIF ENDWHILE
  431.  
  432.  
  433. '####################################################################################
  434. !short:UNTIL            conditional repeat until loop end
  435. ^BUNTIL conditional repeat until loop end:
  436. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  437.  
  438. Syntax:
  439. ~~~~~~~
  440.  
  441.   ^UUNTIL^N <Expr>
  442.  
  443. Description:
  444. ~~~~~~~~~~~~
  445. If the expresion <Expr> is true, the loop is finished otherwise the looping
  446. is continued.
  447.  
  448. Source file is Object.ch
  449.  
  450. !seealso: REPEAT LOOPIF EXITIF ENDWHILE
  451.  
  452.  
  453. '####################################################################################
  454. !short:ENDREPEAT        unconditional repeat loop end
  455. ^BENDREPEAT unconditional repeat loop end:
  456. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  457.  
  458. Syntax:
  459. ~~~~~~~
  460.  
  461.   ^UENDREPEAT^N
  462.  
  463. Description:
  464. ~~~~~~~~~~~~
  465. in conection with REPEAT command can cause the unlimited loop.
  466.  
  467. Example:
  468. ~~~~~~~~
  469.   REPEAT
  470.     EndLessProcedure()
  471.   ENDREPEAT
  472.  
  473.  
  474. Source file is Object.ch
  475.  
  476. !seealso: REPEAT EXITIF LOOPIF ENDWHILE
  477.  
  478.  
  479. '####################################################################################
  480. !short:RETURNIF         conditional function exit
  481. ^BRETURNIF conditional function exit:
  482. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  483.  
  484. Syntax:
  485. ~~~~~~~
  486.  
  487.   ^URETURNIF^N <Expr> ^UWITH^N <ReturnValue>
  488.  
  489. Description:
  490. ~~~~~~~~~~~~
  491. If a value of <Expr> is true, the loop is finished with command
  492. RETURN <ReturnValue>
  493.  
  494. Example:
  495. ~~~~~~~~
  496.  
  497.   FUNCTION Test(x)
  498.     RETURNIF x==nil WITH false   //nothing to test
  499.     //the test text
  500.     RETURN true
  501.  
  502.  
  503. Source file is Object.ch
  504.  
  505. !seealso: BREAKIF EXITIF LOOPIF
  506.  
  507.  
  508. '####################################################################################
  509. !short:RETURN UPDATE    function exit, for switch set
  510. ^BRETURN UPDATE function exit, for switch set:
  511. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  512.  
  513. Syntax:
  514. ~~~~~~~
  515.  
  516.   ^URETURN^N <Var> ^UUPDATE WITH^N <Value>
  517.  
  518. Description:
  519. ~~~~~~~~~~~~
  520. The variable <Var> is temporary stored and after it the <Var> is assigned the 
  521. <Value> if diferent from NIL and the temporary stored <Var> is restored by
  522. RETURN command.
  523.  
  524.  
  525. Example:
  526. ~~~~~~~~
  527.  
  528.   FUNCTION MySet(New)
  529.     STATIC Old
  530.     RETURN Old UPDATE WITH New
  531.  
  532. Rewriting this code in standard clipper:
  533.  
  534.   FUNCTION MySet(New)
  535.     STATIC Old
  536.     LOCAL pom:=Old
  537.     IF New<>NIL
  538.       Old:=New
  539.     END
  540.     RETURN pom
  541.  
  542.  
  543. Source file is Object.ch
  544.  
  545. !seealso: RETURNIF BREAKIF EXITIF LOOPIF
  546.  
  547.  
  548. '####################################################################################
  549. !short:FILL EMPTY       variable is filled if empty
  550. ^BFILL EMPTY variable is filled if empty:
  551. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  552.  
  553. Syntax:
  554. ~~~~~~~
  555.  
  556.   ^UFILL EMPTY^N <Var1> ^U:=^N <Value1> [, <VarN> ^U:=^N <ValueN> ]
  557.  
  558. Description:
  559. ~~~~~~~~~~~~
  560. If the expresion Empty(<Var1>) is true the <Var1> is assigned the <Value1>.
  561. This is performed for all variables and their values.
  562.  
  563. Example:
  564. ~~~~~~~~
  565.  
  566.   FILL EMPTY A:=11, B:=22, C:=33
  567.  
  568. can be rewritten:
  569.  
  570.   IF EMPTY(A)
  571.     A:=11
  572.   END
  573.   IF EMPTY(B)
  574.     B:=22
  575.   END
  576.   IF EMPTY(C)
  577.     C:=33
  578.   ENDIF
  579.  
  580.  
  581. Source file is Object.ch
  582.  
  583. !seealso: "DEFAULT" "STORE VALUE"
  584.  
  585.  
  586. '####################################################################################
  587. !short:DEFAULT          variable is filled with default value if it's value is NIL
  588. ^BDEFAULT variable is filled with default value if it's value is NIL:
  589. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  590.  
  591. Syntax:
  592. ~~~~~~~
  593.  
  594.   ^UDEFAULT^N <Var1> ^U:=^N <Value1> [, <VarN> ^U:=^N <ValueN> ]
  595.  
  596. Description:
  597. ~~~~~~~~~~~~
  598. If the variable <Var1> == NIL, the variable <Var1> is assigned the <Value1>.
  599. This is performed for all variables and their values.
  600.  
  601. Example:
  602. ~~~~~~~~
  603.  
  604.   DEFAULT A:=11, B:=22, C:=33
  605.  
  606. can be rewritten:
  607.  
  608.   IF A==NIL
  609.     A:=11
  610.   END
  611.   IF B==NIL
  612.     B:=22
  613.   END
  614.   IF C==NIL
  615.     C:=33
  616.   ENDIF
  617.  
  618.  
  619. Source file is Object.ch
  620.  
  621. !seealso: "FILL EMPTY" "STORE VALUE"
  622.  
  623.  
  624. '####################################################################################
  625. !short:STORE VALUE      variable is stored the default value if it's value <> NIL
  626. ^BSTORE VALUE variable is stored the default value if it's value <> NIL:
  627. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  628.  
  629. Syntax:
  630. ~~~~~~~
  631.  
  632.   ^USTORE VALUE^N <Value1> ^UINTO^N <Var1> [, <ValueN> ^UINTO^N <VarN> ]
  633.  
  634. Description:
  635. ~~~~~~~~~~~~~
  636. If the expresion <Value1> <> NIL, then the variable <Var1> is assigned the
  637. <Value1>. This is performed for all variables and their values.
  638.  
  639. Example:
  640. ~~~~~~~~
  641.  
  642.   STORE VALUE xxx INTO A, yyy INTO B, zzz INTO C
  643.  
  644. can be rewritten:
  645.  
  646.   IF xxx==NIL
  647.     A:=xxx
  648.   END
  649.   IF yyy==NIL
  650.     B:=yyy
  651.   END
  652.   IF zzz==NIL
  653.     C:=zzz
  654.   ENDIF
  655.  
  656.  
  657. Source file is Object.ch
  658.  
  659. !seealso: "FILL EMPTY" "DEFAULT"
  660.  
  661.  
  662. '####################################################################################
  663. !short:SET ERRORS FILE  error file name set
  664. ^BSET ERRORS FILE error file name set:
  665. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  666.  
  667. Syntax:
  668. ~~~~~~~
  669.  
  670.   ^USET ERRORRS FILE^N [^UTO^N] <FileName>
  671.  
  672. Description:
  673. ~~~~~~~~~~~~
  674. The Object.lib library has corrected Error.sys to output the error message
  675. to the file set with SET ERRORS command too. It is convenient to quiet
  676. study of reason of program abort. If the file <FileName> doesn't exist it
  677. is created, if exists the messges are apended to its end.
  678.  
  679.  
  680. Source file is Object.ch
  681.  
  682. !seealso: ob_funct.ngo:SetErrFile
  683.  
  684.  
  685. '####################################################################################
  686. !short:SET LASTKEY      key code for the LasteKey() function set
  687. ^BSET LASTKEY key code for the LasteKey() function set:
  688. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  689.  
  690. Syntax:
  691. ~~~~~~~
  692.  
  693.   ^USET LAST KEY^N [^UTO^N] <nKey>
  694.  
  695. Description:
  696. ~~~~~~~~~~~~
  697. This preprocessor command is transformed to SetLastKey() function call.
  698. The <nKey> code is set so the LastKey() function call returns the <nKey>
  699. value, till the next keypress or redefinition by SET LAST KEY command
  700. (or SetLastKey() function).
  701.  
  702.  
  703. Source file is Object.ch
  704.  
  705. !seealso: ob_funct.ngo:SetLastKey
  706.  
  707.  
  708. '####################################################################################
  709. !short:SET QUICKESC     sets if the ESC key should exit the menu or no
  710. ^BSET QUICKESC sets if the ESC key should exit the menu or no:
  711. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  712.  
  713. Syntax:
  714. ~~~~~~~
  715.  
  716.   ^USET QUICKESC^N [^UTO^N] <lValue>
  717.  
  718. Function:
  719. ~~~~~~~~
  720. This command is preprocessored to function call SetQuickEsc().
  721. If <lValue> is true the Esc keypressing causes immediate menu exit, if it is
  722. true the ESC keypressing causes the one menu level return.
  723.  
  724. Source code is in  Object.ch
  725.  
  726. !seealso: ob_funct.ngo:SetQuickEsc ob_class.ngo:Menu
  727.  
  728.  
  729. '####################################################################################
  730. !short:SET DIALOG       enable / disable dialog line output
  731. ^BSET DIALOG enable / disable dialog line output:
  732. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  733.  
  734. Syntax:
  735. ~~~~~~~
  736.  
  737.   ^USET DIALOG^N [^UTO^N] <lValue>
  738.  
  739. Function:
  740. ~~~~~~~~~
  741. This command is preprocessored to function call SetDialog().
  742. If the <lValue> is true the dialog line output is enabled, if false it is
  743. disabled.
  744.  
  745. Source code is in  Object.ch
  746.  
  747. !seealso: ob_funct.ngo:SetDialog ob_class.ngo:Menu
  748.  
  749.  
  750. '####################################################################################
  751. !short:CLEAR KEYBOARD   cleares the keyboard queue
  752. ^BCLEAR KEYBOARD cleares the keyboard queue:
  753. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  754.  
  755. Syntax:
  756. ~~~~~~~
  757.  
  758.   ^UCLEAR KEYBOARD^N
  759.  
  760. Function:
  761. ~~~~~~~~~
  762. The same as original CLEAR TYPEAHEAD, but more readable form.
  763.  
  764.  
  765. Source code is in  Object.ch
  766.  
  767. !seealso:
  768.  
  769.  
  770. '####################################################################################
  771. '!short:SKIP DELETED     search for first undeleted database record
  772. ^BSKIP DELETED search for first undeleted database record:
  773. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  774.  
  775. Syntax:
  776. ~~~~~~~
  777.  
  778.   ^USKIP DELETED^N
  779.  
  780. Function:
  781. ~~~~~~~~~
  782.  
  783. The same as function SkipDeleted().
  784.  
  785.  
  786. Source code is in  Object.ch
  787.  
  788. !seealso:  ob_funct.ngo:SkipDeleted
  789.  
  790.  
  791. '####################################################################################
  792. '!short:REFRESH ROW      current View object row refresh
  793. ^BREFRESH ROW  current View object row refresh:
  794. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  795.  
  796. Syntax:
  797. ~~~~~~~
  798.  
  799.   ^UREFRESH ROW^N
  800.  
  801. Function:
  802. ~~~~~~~~~
  803. The same as function RefreshRow().
  804.  
  805.  
  806. Source code is in  Object.ch
  807.  
  808. !seealso:  ob_funct.ngo:RefreshRow
  809.  
  810.  
  811. '####################################################################################
  812. '!short:REFRESH TABLE    current View object refresh
  813. ^BREFRESH TABLE  current View object refresh:
  814. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  815.  
  816. Syntax:
  817. ~~~~~~~
  818.  
  819.   ^UREFRESH TABLE^N
  820.  
  821. Function:
  822. ~~~~~~~~~
  823. The same as function RefreshTable().
  824.  
  825.  
  826. Source code is in  Object.ch
  827.  
  828. !seealso:  ob_funct.ngo:RefreshTable
  829.  
  830.  
  831. '####################################################################################
  832. !short:NET CREATE       database cretion in network environment
  833. ^BNET CREATE database cretion in network environment:
  834. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  835.  
  836. Syntax:
  837. ~~~~~~~
  838.  
  839.   ^UNET CREATE^N <File1> [^UFROM^N <File2>] [^UCONTINUE^N] [^URETURN^N <expr>]
  840.  
  841. Function:
  842. ~~~~~~~~~
  843. It is a network version of clipper command CREATE FROM...,
  844. with following enhancements:
  845. 1.Network enhancement: If command fails, the user is given an Alert about it
  846.   and he is to decide the next step:
  847.         - repeat the failed command
  848.         - continue even if the command failed, and when the CONTINUE clause
  849.           was used
  850.         - break of the program with a question if the user realy wants to
  851.           break the program
  852. 2.CONTINUE clause: If set the user has the possibility to continue after
  853.   a network error occured. This can be checked by NetErr(), which is after
  854.   a network error set to true, when also the CONTINUE clause is used.
  855. 3.RETURN clause: is to use when is the continue clause used too. If it is
  856.   used and after an failed command user wants to continue, the RETURN false
  857.   command is performed to immediate break of a failed function.
  858.  
  859. This enhancements are a strong tool for a programmer, but this library has
  860. better capabilities to handle the database in a network environment, see the
  861. objects of Dbf and View classes for a high level network data handle.
  862.  
  863. Source code is in Object.ch a Object3.prg
  864.  
  865. !seealso: ob_funct.ngo:NetCreateFrom c_dbf.ngo:Dbf c_view.ngo:View
  866.  
  867.  
  868. '####################################################################################
  869. !short:NET USE          database open in a network environment
  870. ^BNET USE database open in a network environment:
  871. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  872.  
  873. Syntax:
  874. ~~~~~~~
  875.  
  876.   ^UNET USE^N <dbf> [^UVIA^N <rdd>] [^UALIAS^N <alias>] ;
  877.   [^UNEW^N] [^UEXCLUSIVE^N] [^USHARED^N] [^UREADONLY^N] ;
  878.   [^UINDEX^N <indexlist>] [^UCONTINUE^N] [^URETURN^N <expr>]
  879.  
  880. Function:
  881. ~~~~~~~~~
  882. It is a network version of clipper USE..., command with following
  883. enhancements:
  884. 1.Network enhancement: If command fails, the user is given an Alert about it
  885.   and he is to decide the next step:
  886.         - repeat the failed command
  887.         - continue even if the command failed, and when the CONTINUE clause
  888.           was used
  889.         - break of the program with a question if the user realy wants to
  890.           break the program
  891. 2.CONTINUE clause: If set the user has the possibility to continue after
  892.   a network error occured. This can be checked by NetErr(), which is after
  893.   a network error set to true, when also the CONTINUE clause is used.
  894. 3.RETURN clause: is to use when is the continue clause used too. If it is
  895.   used and after an failed command user wants to continue, the RETURN false
  896.   command is performed to immediate break of a failed function.
  897.  
  898. This enhancements are a strong tool for a programmer, but this library has
  899. better capabilities to handle the database in a network environment, see the
  900. objects of Dbf and View classes for a high level network data handle.
  901.  
  902. Source code is in Object.ch a Object3.prg
  903.  
  904. !seealso: ob_funct.ngo:NetDbUseArea c_dbf.ngo:Dbf c_view.ngo:View
  905.  
  906.  
  907. '####################################################################################
  908. !short:NET INDEX ON     index file creation in a network environment
  909. ^BNET INDEX ON index file creation in a network environment:
  910. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  911.  
  912. Syntax:
  913. ~~~~~~~
  914.  
  915.   ^UNET INDEX ON^N <key> [^UTO^N <file>] [^UUNIQUE^N] [^UCONTINUE^N] [^URETURN^N <expr>]
  916.  
  917. Function:
  918. ~~~~~~~~
  919. It is a network version of clipper command INDEX ON...,
  920. with following enhancements:
  921. 1.Network enhancement: If command fails, the user is given an Alert about it
  922.   and he is to decide the next step:
  923.         - repeat the failed command
  924.         - continue even if the command failed, and when the CONTINUE clause
  925.           was used
  926.         - break of the program with a question if the user realy wants to
  927.           break the program
  928. 2.CONTINUE clause: If set the user has the possibility to continue after
  929.   a network error occured. This can be checked by NetErr(), which is after
  930.   a network error set to true, when also the CONTINUE clause is used.
  931. 3.RETURN clause: is to use when is the continue clause used too. If it is
  932.   used and after an failed command user wants to continue, the RETURN false
  933.   command is performed to immediate break of a failed function.
  934.  
  935. This enhancements are a strong tool for a programmer, but this library has
  936. better capabilities to handle the database in a network environment, see the
  937. objects of Dbf and View classes for a high level network data handle.
  938.  
  939. Source code is in Object.ch a Object3.prg
  940.  
  941. !seealso: ob_funct.ngo:NetIndexOn c_dbf.ngo:Dbf c_view.ngo:View
  942.  
  943.  
  944. '####################################################################################
  945. !short:NET SET INDEX    index file open in a network environment
  946. ^BNET SET INDEX index file open in a network environment:
  947. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  948.  
  949. Syntax:
  950. ~~~~~~~
  951.  
  952.   ^UNET SET INDEX TO^N
  953.  
  954.   ^UNET SET INDEX TO^N <list> [^UCONTINUE^N] [^URETURN^N <expr>]
  955.  
  956. Function:
  957. ~~~~~~~~
  958. It is a network version of clipper command SET INDEX TO...,
  959. with following enhancements:
  960. 1.Network enhancement: If command fails, the user is given an Alert about it
  961.   and he is to decide the next step:
  962.         - repeat the failed command
  963.         - continue even if the command failed, and when the CONTINUE clause
  964.           was used
  965.         - break of the program with a question if the user realy wants to
  966.           break the program
  967. 2.CONTINUE clause: If set the user has the possibility to continue after
  968.   a network error occured. This can be checked by NetErr(), which is after
  969.   a network error set to true, when also the CONTINUE clause is used.
  970. 3.RETURN clause: is to use when is the continue clause used too. If it is
  971.   used and after an failed command user wants to continue, the RETURN false
  972.   command is performed to immediate break of a failed function.
  973.  
  974. This enhancements are a strong tool for a programmer, but this library has
  975. better capabilities to handle the database in a network environment, see the
  976. objects of Dbf and View classes for a high level network data handle.
  977.  
  978. Source code is in Object.ch a Object3.prg
  979.  
  980. !seealso: ob_funct.ngo:NetSetIndex c_dbf.ngo:Dbf c_view.ngo:View
  981.  
  982.  
  983. '####################################################################################
  984. !short:NET APPEND BLANK blank record append in a network environment
  985. ^BNET APPEND BLANK blank record append in a network environment:
  986. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  987.  
  988. Syntax:
  989. ~~~~~~~
  990.  
  991.   ^UNET APPEND BLANK [^UIN^N <alias>,[<order>]] [^UCONTINUE^N] [^URETURN^N <expr>]
  992.  
  993. Function:
  994. ~~~~~~~~~
  995. It is a network version of clipper command APPEND BLANK,
  996. with following enhancements:
  997. 1.Clause IN <alias>,<order>: command APPEND... is performed in workarea
  998.   <alias> with active index <order>. After this command may be unlocked
  999.   current record in <alias> workarea. All other settings are unchanged.
  1000.   (i.e. RecNo(), set order to..., RLock(), select, ...)
  1001.  
  1002. 2.Clause SEEK <key>: command APPEND... is performed for all this records,
  1003.   that will be founded with seek <key> in required workarea. 
  1004.  
  1005. 3.Network enhancement: If command fails, the user is given an Alert about it
  1006.   and he is to decide the next step:
  1007.         - repeat the failed command
  1008.         - continue even if the command failed, and when the CONTINUE clause
  1009.           was used
  1010.         - break of the program with a question if the user realy wants to
  1011.           break the program
  1012. 4.CONTINUE clause: If set the user has the possibility to continue after
  1013.   a network error occured. This can be checked by NetErr(), which is after
  1014.   a network error set to true, when also the CONTINUE clause is used.
  1015. 5.RETURN clause: is to use when is the continue clause used too. If it is
  1016.   used and after an failed command user wants to continue, the RETURN false
  1017.   command is performed to immediate break of a failed function.
  1018.  
  1019. This enhancements are a strong tool for a programmer, but this library has
  1020. better capabilities to handle the database in a network environment, see the
  1021. objects of Dbf and View classes for a high level network data handle.
  1022.  
  1023. Source code is in Object.ch a Object3.prg
  1024.  
  1025. !seealso: ob_funct.ngo:NetDbAppend c_dbf.ngo:Dbf c_view.ngo:View
  1026.  
  1027.  
  1028. '####################################################################################
  1029. !short:NET DELETE       record deleted mark in a network environment
  1030. ^BNET DELETE record deleted mark in a network environment:
  1031. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1032.  
  1033. Syntax:
  1034. ~~~~~~~
  1035.  
  1036.   ^UNET DELETE^N [^UIN^N <alias>,[<order>]] ;
  1037.   [ [^UFOR^N <for>] [^UWHILE^N <while>] [^NNEXT^N <next>] ;
  1038.   [^URECORD^N <rec>] [^UREST^N] [^UALL^N] [^UCONTINUE^N] [^URETURN^N <expr>]
  1039.  
  1040.   ^UNET DELETE^N [^UIN^N <alias>,[<order>]] ;
  1041.   [^USEEK^N <key>] [^UCONTINUE^N] [^URETURN^N <expr>]
  1042.  
  1043. Function:
  1044. ~~~~~~~~~
  1045. It is a network version of clipper command DELETE...,
  1046. with following enhancements:
  1047. 1.Clause IN <alias>,<order>: command DELETE is performed in workarea
  1048.   <alias> with active index <order>. After this command may be unlocked
  1049.   current record in <alias> workarea. All other settings are unchanged.
  1050.   (i.e. RecNo(), set order to..., RLock(), select, ...)
  1051.  
  1052. 2.Clause SEEK <key>: command DELETE is performed for all this records,
  1053.   that will be founded with seek <key> in required workarea. 
  1054.  
  1055. 3.Network enhancement: If command fails, the user is given an Alert about it
  1056.   and he is to decide the next step:
  1057.         - repeat the failed command
  1058.         - continue even if the command failed, and when the CONTINUE clause
  1059.           was used
  1060.         - break of the program with a question if the user realy wants to
  1061.           break the program
  1062. 4.CONTINUE clause: If set the user has the possibility to continue after
  1063.   a network error occured. This can be checked by NetErr(), which is after
  1064.   a network error set to true, when also the CONTINUE clause is used.
  1065. 5.RETURN clause: is to use when is the continue clause used too. If it is
  1066.   used and after an failed command user wants to continue, the RETURN false
  1067.   command is performed to immediate break of a failed function.
  1068.  
  1069. This enhancements are a strong tool for a programmer, but this library has
  1070. better capabilities to handle the database in a network environment, see the
  1071. objects of Dbf and View classes for a high level network data handle.
  1072.  
  1073. Source code is in Object.ch a Object3.prg
  1074.  
  1075. !seealso: ob_funct.ngo:NetDbDelete c_dbf.ngo:Dbf c_view.ngo:View
  1076.  
  1077.  
  1078. '####################################################################################
  1079. !short:NET RECALL       deleted marked record recall in a network environment
  1080. ^BNET RECALL deleted marked record recall in a network environment:
  1081. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1082.  
  1083. Syntax:
  1084. ~~~~~~~
  1085.  
  1086.   ^UNET RECALL^N [^UIN^N <alias>,[<order>]] ;
  1087.   [ [^UFOR^N <for>] [^UWHILE^N <while>] [^NNEXT^N <next>] ;
  1088.   [^URECORD^N <rec>] [^UREST^N] [^UALL^N] [^UCONTINUE^N] [^URETURN^N <expr>]
  1089.  
  1090.   ^UNET RECALL^N [^UIN^N <alias>,[<order>]] ;
  1091.   [^USEEK^N <key>] [^UCONTINUE^N] [^URETURN^N <expr>]
  1092.  
  1093. Function:
  1094. ~~~~~~~~~
  1095. It is a network version of clipper command RECALL...,
  1096. with following enhancements:
  1097. 1.Clause IN <alias>,<order>: command RECALL is performed in workarea
  1098.   <alias> with active index <order>. After this command may be unlocked
  1099.   current record in <alias> workarea. All other settings are unchanged.
  1100.   (i.e. RecNo(), set order to..., RLock(), select, ...)
  1101.  
  1102. 2.Clause SEEK <key>: command RECALL is performed for all this records,
  1103.   that will be founded with seek <key> in required workarea. 
  1104.  
  1105. 3.Network enhancement: If command fails, the user is given an Alert about it
  1106.   and he is to decide the next step:
  1107.         - repeat the failed command
  1108.         - continue even if the command failed, and when the CONTINUE clause
  1109.           was used
  1110.         - break of the program with a question if the user realy wants to
  1111.           break the program
  1112. 4.CONTINUE clause: If set the user has the possibility to continue after
  1113.   a network error occured. This can be checked by NetErr(), which is after
  1114.   a network error set to true, when also the CONTINUE clause is used.
  1115. 5.RETURN clause: is to use when is the continue clause used too. If it is
  1116.   used and after an failed command user wants to continue, the RETURN false
  1117.   command is performed to immediate break of a failed function.
  1118.  
  1119. This enhancements are a strong tool for a programmer, but this library has
  1120. better capabilities to handle the database in a network environment, see the
  1121. objects of Dbf and View classes for a high level network data handle.
  1122.  
  1123. Source code is in Object.ch a Object3.prg
  1124.  
  1125. !seealso: ob_funct.ngo:NetDbRecall c_dbf.ngo:Dbf c_view.ngo:View
  1126.  
  1127.  
  1128. '####################################################################################
  1129. !short:NET REPLACE       extended network storing a data info database file
  1130. ^BNET REPLACE  extended network storing a data info database file:
  1131. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1132.  
  1133. Syntax:
  1134. ~~~~~~~
  1135.  
  1136.   ^UNET REPLACE^N f1:=v1 [,fN:=vN] [^UIN^N <alias>,[<order>]] ;
  1137.   [ [^UFOR^N <for>] [^UWHILE^N <while>] [^NNEXT^N <next>] ;
  1138.   [^URECORD^N <rec>] [^UREST^N] [^UALL^N] [^UCONTINUE^N] [^URETURN^N <expr>]
  1139.  
  1140.   ^UNET REPLACE^N f1:=v1 [,fN:=vN] [^UIN^N <alias>,[<order>]] ;
  1141.   [^USEEK^N <key>] [^UCONTINUE^N] [^URETURN^N <expr>]
  1142.  
  1143. Function:
  1144. ~~~~~~~~~
  1145. It is the network version of clipper command REPLACE with following
  1146. enhancements:
  1147. 1.Clause IN <alias>,<order>: command REPLACE is performed in workarea
  1148.   <alias> with active index <order>. After this command may be unlocked
  1149.   current record in <alias> workarea. All other settings are unchanged.
  1150.   (i.e. RecNo(), set order to..., RLock(), select, ...)
  1151.  
  1152. 2.Clause SEEK <key>: command REPLACE is performed for all this records,
  1153.   that will be founded with seek <key> in required workarea. 
  1154.  
  1155. 3.Network enhancement: If command fails, the user is given an Alert about it
  1156.   and he is to decide the next step:
  1157.         - repeat the failed command
  1158.         - continue even if the command failed, and when the CONTINUE clause
  1159.           was used
  1160.         - break of the program with a question if the user realy wants to
  1161.           break the program
  1162. 4.CONTINUE clause: If set the user has the possibility to continue after
  1163.   a network error occured. This can be checked by NetErr(), which is after
  1164.   a network error set to true, when also the CONTINUE clause is used.
  1165. 5.RETURN clause: is to use when is the continue clause used too. If it is
  1166.   used and after an failed command user wants to continue, the RETURN false
  1167.   command is performed to immediate break of a failed function.
  1168.  
  1169. Source code is in Object.ch a Object3.prg
  1170.  
  1171. !seealso: ob_funct.ngo:NetRLock c_dbf.ngo:Dbf c_view.ngo:View
  1172.  
  1173.  
  1174. '####################################################################################
  1175. !short:NET RLOCK        record lock before write atempt in a network environment
  1176. ^BNET RLOCK record lock before write atempt in a network environment:
  1177. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1178.  
  1179. Syntax:
  1180. ~~~~~~~
  1181.  
  1182.   ^UNET RLOCK^N [^UCONTINUE^N] [^URETURN^N <expr>]
  1183.  
  1184. Function:
  1185. ~~~~~~~~~
  1186. It is a network version of clipper command RLOCK,
  1187. with following enhancements:
  1188. 1.Network enhancement: If command fails, the user is given an Alert about it
  1189.   and he is to decide the next step:
  1190.         - repeat the failed command
  1191.         - continue even if the command failed, and when the CONTINUE clause
  1192.           was used
  1193.         - break of the program with a question if the user realy wants to
  1194.           break the program
  1195. 2.CONTINUE clause: If set the user has the possibility to continue after
  1196.   a network error occured. This can be checked by NetErr(), which is after
  1197.   a network error set to true, when also the CONTINUE clause is used.
  1198. 3.RETURN clause: is to use when is the continue clause used too. If it is
  1199.   used and after an failed command user wants to continue, the RETURN false
  1200.   command is performed to immediate break of a failed function.
  1201.  
  1202. This enhancements are a strong tool for a programmer, but this library has
  1203. better capabilities to handle the database in a network environment, see the
  1204. objects of Dbf and View classes for a high level network data handle.
  1205.  
  1206. Source code is in Object.ch a Object3.prg
  1207.  
  1208. !seealso: ob_funct.ngo:NetRLock c_dbf.ngo:Dbf c_view.ngo:View
  1209.  
  1210.  
  1211. '####################################################################################
  1212. !short:NET FLOCK        database file lock before write atempt in a network environ
  1213. ^BNET FLOCK database file lock before write atempt in a network environment:
  1214. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1215.  
  1216. Syntax:
  1217. ~~~~~~~
  1218.  
  1219.   ^UNET FLOCK^N [^UCONTINUE^N] [^URETURN^N <expr>]
  1220.  
  1221. Function:
  1222. ~~~~~~~~~
  1223. It is a network version of clipper command FLOCK,
  1224. with following enhancements:
  1225. 1.Network enhancement: If command fails, the user is given an Alert about it
  1226.   and he is to decide the next step:
  1227.         - repeat the failed command
  1228.         - continue even if the command failed, and when the CONTINUE clause
  1229.           was used
  1230.         - break of the program with a question if the user realy wants to
  1231.           break the program
  1232. 2.CONTINUE clause: If set the user has the possibility to continue after
  1233.   a network error occured. This can be checked by NetErr(), which is after
  1234.   a network error set to true, when also the CONTINUE clause is used.
  1235. 3.RETURN clause: is to use when is the continue clause used too. If it is
  1236.   used and after an failed command user wants to continue, the RETURN false
  1237.   command is performed to immediate break of a failed function.
  1238.  
  1239. This enhancements are a strong tool for a programmer, but this library has
  1240. better capabilities to handle the database in a network environment, see the
  1241. objects of Dbf and View classes for a high level network data handle.
  1242.  
  1243. Source code is in Object.ch a Object3.prg
  1244.  
  1245. !seealso: ob_funct.ngo:NetFLock c_dbf.ngo:Dbf c_view.ngo:View
  1246.  
  1247.  
  1248. '####################################################################################
  1249. !short:NET ERASE        database file delete in a network environment
  1250. ^BNET ERASE database file delete in a network environment:
  1251. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1252.  
  1253. Syntax:
  1254. ~~~~~~~
  1255.  
  1256.   ^UNET ERASE^N <file> [^UCONTINUE^N] [^URETURN^N <expr>]
  1257.  
  1258. Function:
  1259. ~~~~~~~~~
  1260. It is a network version of clipper command ERASE...,
  1261. with following enhancements:
  1262. 1.Network enhancement: If command fails, the user is given an Alert about it
  1263.   and he is to decide the next step:
  1264.         - repeat the failed command
  1265.         - continue even if the command failed, and when the CONTINUE clause
  1266.           was used
  1267.         - break of the program with a question if the user realy wants to
  1268.           break the program
  1269. 2.CONTINUE clause: If set the user has the possibility to continue after
  1270.   a network error occured. This can be checked by NetErr(), which is after
  1271.   a network error set to true, when also the CONTINUE clause is used.
  1272. 3.RETURN clause: is to use when is the continue clause used too. If it is
  1273.   used and after an failed command user wants to continue, the RETURN false
  1274.   command is performed to immediate break of a failed function.
  1275.  
  1276. This enhancements are a strong tool for a programmer, but this library has
  1277. better capabilities to handle the database in a network environment, see the
  1278. objects of Dbf and View classes for a high level network data handle.
  1279.  
  1280. Source code is in Object.ch a Object3.prg
  1281.  
  1282. !seealso: ob_funct.ngo:NetFErase c_dbf.ngo:Dbf c_view.ngo:View
  1283.  
  1284.  
  1285. '####################################################################################
  1286. !short:NET REINDEX      reindex of databases in a network environment
  1287. ^BNET REINDEX reindex of databases in a network environment:
  1288. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1289.  
  1290. Syntax:
  1291. ~~~~~~~
  1292.  
  1293.   ^UNET REINDEX^N [^UCONTINUE^N] [^URETURN^N <expr>]
  1294.  
  1295. Function:
  1296. ~~~~~~~~~
  1297. It is a network version of clipper command REINDEX...,
  1298. with following enhancements:
  1299. 1.Network enhancement: If command fails, the user is given an Alert about it
  1300.   and he is to decide the next step:
  1301.         - repeat the failed command
  1302.         - continue even if the command failed, and when the CONTINUE clause
  1303.           was used
  1304.         - break of the program with a question if the user realy wants to
  1305.           break the program
  1306. 2.CONTINUE clause: If set the user has the possibility to continue after
  1307.   a network error occured. This can be checked by NetErr(), which is after
  1308.   a network error set to true, when also the CONTINUE clause is used.
  1309. 3.RETURN clause: is to use when is the continue clause used too. If it is
  1310.   used and after an failed command user wants to continue, the RETURN false
  1311.   command is performed to immediate break of a failed function.
  1312.  
  1313. This enhancements are a strong tool for a programmer, but this library has
  1314. better capabilities to handle the database in a network environment, see the
  1315. objects of Dbf and View classes for a high level network data handle.
  1316.  
  1317. Source code is in Object.ch a Object3.prg
  1318.  
  1319. !seealso: ob_funct.ngo:NetReIndex c_dbf.ngo:Dbf c_view.ngo:View
  1320.  
  1321.  
  1322. '####################################################################################
  1323. !short:NET PACK         pack of database in a network environment
  1324. ^BNET PACK pack of database in a network environment:
  1325. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1326.  
  1327. Syntax:
  1328. ~~~~~~~
  1329.  
  1330.   ^UNET PACK^N [^UCONTINUE^N] [^URETURN^N <expr>]
  1331.  
  1332. Function:
  1333. ~~~~~~~~~
  1334. It is a network version of clipper command PACK...,
  1335. with following enhancements:
  1336. 1.Network enhancement: If command fails, the user is given an Alert about it
  1337.   and he is to decide the next step:
  1338.         - repeat the failed command
  1339.         - continue even if the command failed, and when the CONTINUE clause
  1340.           was used
  1341.         - break of the program with a question if the user realy wants to
  1342.           break the program
  1343. 2.CONTINUE clause: If set the user has the possibility to continue after
  1344.   a network error occured. This can be checked by NetErr(), which is after
  1345.   a network error set to true, when also the CONTINUE clause is used.
  1346. 3.RETURN clause: is to use when is the continue clause used too. If it is
  1347.   used and after an failed command user wants to continue, the RETURN false
  1348.   command is performed to immediate break of a failed function.
  1349.  
  1350. This enhancements are a strong tool for a programmer, but this library has
  1351. better capabilities to handle the database in a network environment, see the
  1352. objects of Dbf and View classes for a high level network data handle.
  1353.  
  1354. Source code is in Object.ch a Object3.prg
  1355.  
  1356. !seealso: ob_funct.ngo:NetPack c_dbf.ngo:Dbf c_view.ngo:View
  1357.  
  1358.  
  1359. '####################################################################################
  1360. !short:NET ZAP          zap of database in a network environment
  1361. ^BNET ZAP zap of database in a network environment:
  1362. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1363.  
  1364. Syntax:
  1365. ~~~~~~~
  1366.  
  1367.   ^UNET ZAP^N [^UCONTINUE^N] [^URETURN^N <expr>]
  1368.  
  1369. Function:
  1370. ~~~~~~~~~
  1371. It is a network version of clipper command ZAP...,
  1372. with following enhancements:
  1373. 1.Network enhancement: If command fails, the user is given an Alert about it
  1374.   and he is to decide the next step:
  1375.         - repeat the failed command
  1376.         - continue even if the command failed, and when the CONTINUE clause
  1377.           was used
  1378.         - break of the program with a question if the user realy wants to
  1379.           break the program
  1380. 2.CONTINUE clause: If set the user has the possibility to continue after
  1381.   a network error occured. This can be checked by NetErr(), which is after
  1382.   a network error set to true, when also the CONTINUE clause is used.
  1383. 3.RETURN clause: is to use when is the continue clause used too. If it is
  1384.   used and after an failed command user wants to continue, the RETURN false
  1385.   command is performed to immediate break of a failed function.
  1386.  
  1387. This enhancements are a strong tool for a programmer, but this library has
  1388. better capabilities to handle the database in a network environment, see the
  1389. objects of Dbf and View classes for a high level network data handle.
  1390.  
  1391. Source code is in Object.ch a Object3.prg
  1392.  
  1393. !seealso: ob_funct.ngo:NetZap c_dbf.ngo:Dbf c_view.ngo:View
  1394.  
  1395.  
  1396. '####################################################################################
  1397. !short:NET UNLOCK       unlock of database record in a network environment
  1398. ^BNET UNLOCK unlock of database record in a network environment:
  1399. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1400.  
  1401. Syntax:
  1402. ~~~~~~~
  1403.  
  1404.   ^UNET UNLOCK^N [<rest>]
  1405.  
  1406. Function:
  1407. ~~~~~~~~~
  1408. It is a network version of clipper command UNLOCK...,
  1409. the COMMIT command is performed and then UNLOCK [<rest>].
  1410. Source code is in  Object.ch
  1411.  
  1412. !seealso: "NET RLOCK" c_dbf.ngo:Dbf c_view.ngo:View
  1413.  
  1414.  
  1415. '####################################################################################
  1416. !short:NET CLOSE        close of database in a network environment
  1417. ^BNET CLOSE close of database in a network environment:
  1418. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1419.  
  1420. Syntax:
  1421. ~~~~~~~
  1422.  
  1423.   ^UNET CLOSE^N [<rest>]
  1424.  
  1425. Function:
  1426. ~~~~~~~~
  1427. It is a network version of clipper command CLOSE...,
  1428. the NET UNLOCK [<rest>] is performed and then CLOSE [<rest>].
  1429. Source code is in  Object.ch
  1430.  
  1431. !seealso: "NET UNLOCK" "NET RLOCK" c_dbf.ngo:Dbf c_view.ngo:View
  1432.  
  1433. '
  1434. '˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ eof (c)JHK ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙
  1435. '
  1436.  
  1437.